package com.suny.sf_server.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.suny.Farm.domain.Farm;
import com.baomidou.mybatisplus.extension.service.IService;
import com.suny.Farm.vo.FarmSelectVO;
import com.suny.Farm.vo.FarmVO;
import com.suny.Farm.dto.FarmAddDTO;
import com.suny.Farm.dto.FarmUpdateDTO;
import com.suny.result.PageDTO;
import com.suny.Farm.dto.FarmQueryDTO;

import java.util.List;

/**
* @author sun
* @description 针对表【farm(牧场信息表)】的数据库操作Service
* @createDate 2024-12-27 10:45:10
*/
public interface FarmService extends IService<Farm> {
    void add(FarmAddDTO dto);
    void update(FarmUpdateDTO dto);
    void updateStatus(Integer farmId, Integer status);
    Page<FarmVO> getList(PageDTO pageDTO);
    List<FarmVO> getEnableFarms();
    FarmVO getDetail(Integer farmId);

    Boolean getHasFarmByValId(Integer valId);

    /**
     * 条件查询牧场列表
     */
    Page<FarmVO> getListByCondition(FarmQueryDTO query);

    List<FarmSelectVO> getFarmBySelect();
}
